<!DOCTYPE html>
<html lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>set_calib_data [HALCON算子参考手册]</title>
<style type="text/css">
      body {
    color: #000000;
    background-color: #ffffff;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
}

.body_main {
    margin-left: 35px;
    margin-right: 35px;
}

@media screen and (min-width:992px) {

    .body_main {
        margin-left: 10%;
        margin-right: 10%;
    }

    table.toctable {
        width: 80%
    }
}

@media screen and (min-width:1400px) {

    .body_main {
        margin-left: 15%;
        margin-right: 15%;
    }

    table.toctable {
        width: 70%
    }
}

body>div ul ul {
    margin-left: inherit;
}

a:link {
    color: #0044cc;
}

a:link,
a:visited {
    text-decoration: none;
}

a:link:hover,
a:visited:hover {
    text-decoration: underline;
}

th {
    text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    text-rendering: optimizeLegibility;
    color: #666666;
}

code {
    font-family: monospace,monospace;
}

h1 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

h2 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

hr {
    border: 0;
    border-top: solid 1px #f28d26;
}

.pre {
    display: block;
    padding-bottom: 1ex;
    font-family: monospace;
    white-space: pre;
}

pre {
    font-family: monospace, monospace;
    padding: 1ex;
    white-space: pre-wrap;
}

.toc {
    font-size: 80%;
    border-top: 1px dashed #f28d26;
    border-bottom: 1px dashed #f28d26;
    padding-top: 5px;
    padding-bottom: 5px;
}

.inv {
    margin: 0;
    border: 0;
    padding: 0;
}

.banner {
    color: #666666;
    padding-left: 1em;
}

.logo {
    background-color: white;
}

.keyboard {
    font-size: 80%;
    padding-left: 3px;
    padding-right: 3px;
    border-radius: 5px;
    border-width: 1px;
    border-style: solid;
    border-color: #f28d26;
    background-color: #f3f3f3;
}

.warning {
    margin-top: 2ex;
    margin-bottom: 1ex;
    padding: 10px;
    text-align: center;
    border: 1px solid;
    color: #bb0000;
    background-color: #fff7f7
}

.imprint {
    margin-top: 1ex;
    font-size: 80%;
    color: #666666;
}

.imprinthead {
    font-weight: bolder;
    color: #666666;
}

.indexlink {
    text-align: right;
    padding-bottom: 5px;
}

.postscript {
    margin-top: 2ex;
    font-size: 80%;
    color: #666666
}

.evenrow {
    background-color: #e7e7ef;
    vertical-align: top;
}

.oddrow {
    background-color: #f7f7ff;
    vertical-align: top;
}

.headrow {
    background-color: #97979f;
    color: #ffffff;
    vertical-align: top;
}

.logorow {
    vertical-align: top;
}

.error {
    color: red;
}

.var {
    font-style: italic
}

.halconoperator {
    font-family: monospace, monospace;
}

span.operator {
    font-family: monospace, monospace;
}

span.procedure {
    font-family: monospace, monospace;
}

span.operation {
    font-family: monospace, monospace;
}

span.feature {
    font-family: Arial, Helvetica, Homerton, sans-serif;
}

ul {
    padding-left: 1.2em;
}

li.dot {
    list-style-type: square;
    color: #f28d26;
}

.breadcrumb {
    font-size: 80%;
    color: white;
    background-color: #062d64;
    margin-bottom: 20px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 15px;
}

.webbar {
    font-size: 80%;
    background-color: #dddddd;
    margin-top: 0px;
    margin-left: -35px;
    margin-right: -35px;
    margin-bottom: 0px;
    padding-top: 5px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 5px;
}

.footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-top: 1px dashed #f28d26;
    font-size: 80%;
    color: #666666;
    padding-bottom: 8px;
}

.footer .socialmedia a {
    padding-left: 7px;
}

.socialmedia {
    padding-top: 10px;
}

.copyright {
    margin-top: 19px;
}

.breadcrumb a {
    color: #ffffff;
    border-bottom: 1px solid white;
}

.breadcrumb a:link:hover,
.breadcrumb a:visited:hover {
    text-decoration: none;
    border-bottom: none;
}

.heading {
    margin-top: 1ex;
    font-size: 110%;
    font-weight: bold;
    color: #666666;
}

.text {
    color: black;
}

.example {
    font-size: 80%;
    background-color: #f3f3f3;
    border: 1px dashed #666666;
    padding: 10px;
}

.displaymath {
    display: block;
    text-align: center;
    margin-top: 1ex;
    margin-bottom: 1ex;
}

.title {
    float: left;
    padding-top: 3px;
    padding-bottom: 3px;
}

.signnote {
    font-family: Arial, Helvetica, Homerton, sans-serif;
    font-size: 80%;
    color: #666666;
    font-weight: lighter;
    font-style: italic
}

.par {
    margin-bottom: 1.5em;
}

.parhead {
    text-align: right;
}

.parname {
    float: left;
}

.pardesc {
    font-size: 85%;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    margin-left: 2em;
}

.parcat {
    color: #666;
    font-weight: bold;
}

*[data-if=cpp],
*[data-if=c],
*[data-if=dotnet],
*[data-if=com],
*[data-if=python] {
    display: none;
}

.tabbar {
    text-align: right;
    border-bottom: 1px solid #f28d26;
    margin-bottom: 0.5em;
}

ul.tabs {
    padding-top: 3px;
    padding-bottom: 3px;
    margin-top: 10px;
    margin-bottom: 0;
    font-size: 80%
}

ul.tabs li {
    padding-top: 3px;
    padding-bottom: 3px;
    display: inline;
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    margin-left: 8px;
    border-top: 1px solid #666;
    border-left: 1px solid #666;
    border-right: 1px solid #666;
}

ul.tabs li.active {
    border-left: 1px solid #f28d26;
    border-right: 1px solid #f28d26;
    border-top: 1px solid #f28d26;
    border-bottom: 1px solid #fff;
}

ul.tabs li.inactive {
    background-color: #eee;
}

ul.tabs li a {
    padding-left: 5px;
    padding-right: 5px;
    color: #666;
}

ul.tabs li a:link:hover {
    text-decoration: none;
}

ul.tabs li.inactive a {
    color: #666;
}

ul.tabs li.active a {
    color: black;
}

dl.generic dd {
    margin-bottom: 1em;
}

.pari {
    color: olive;
}

.paro {
    color: maroon;
}

.comment {
    font-size: 80%;
    color: green;
    white-space: nowrap;
}

table.grid {
    border-collapse: collapse;
}

table.grid td {
    padding: 5px;
    border: 1px solid;
}

table.layout {
    border: 0px;
}

table.layout td {
    padding: 5px;
}

table.table {
    border-collapse: collapse;
}

table.table td {
    padding: 5px;
    border-left: 0px;
    border-right: 0px;
}

table.table tr:last-child {
    border-bottom: 1px solid;
}

table.table th {
    padding: 5px;
    border-top: 1px solid;
    border-bottom: 1px solid;
    border-left: 0px;
    border-right: 0px;
}

.details_summary {
    cursor: pointer;
}

table.toctable {
    width: 100%;
}

table.toctable col:first-child {
    width: 20%;
}

table.toctable col:nth-last-child(2) {
    width: 8%;
}

table.altcolored tr:nth-child(even) {
    background-color: #f3f3f3;
}

    </style>
<!--OP_REF_STYLE_END-->
<script>
    <!--
var active_lang='hdevelop';function switchVisibility(obj,active_lang,new_lang)
{var display_style='inline';
for(var i=0;i<obj.length;i++)
{if(obj.item(i).getAttribute('data-if')==new_lang)
{obj.item(i).style.display=display_style;}
if(obj.item(i).getAttribute('data-if')==active_lang)
{obj.item(i).style.display='none';}}
return;}
function toggleLanguage(new_lang,initial)
{if(active_lang!=new_lang)
{var lis=document.getElementsByTagName('li');for(var i=0;i<lis.length;i++)
{if(lis.item(i).id=='syn-'+new_lang)
{lis.item(i).className='active';}
else
{lis.item(i).className='inactive';}}
var divs=document.getElementsByTagName('div');var spans=document.getElementsByTagName('span');switchVisibility(divs,active_lang,new_lang);switchVisibility(spans,active_lang,new_lang);if(!initial)
{setCookie("halcon_reference_language",new_lang,null,null);}
active_lang=new_lang;}
return;}
function setCookie(name,value,domain,exp_offset,path,secure)
{localStorage.setItem(name,value);}
function getCookie(name)
{return localStorage.getItem(name);}
function initialize()
{var qs=location.href.split('?')[1];var qs_lang_raw=location.href.split('interface=')[1];var qs_lang;if(qs_lang_raw)
{qs_lang=qs_lang_raw.split('#')[0];}
var cookie_lang=getCookie("halcon_reference_language");var new_lang;if((qs_lang=="hdevelop")||(qs_lang=="dotnet")||(qs_lang=="python")||(qs_lang=="cpp")||(qs_lang=="c"))
{new_lang=qs_lang;setCookie("halcon_reference_language",new_lang,null,null);}
else if((cookie_lang=="hdevelop")||(cookie_lang=="dotnet")||(cookie_lang=="python")||(cookie_lang=="cpp")||(cookie_lang=="c"))
{new_lang=cookie_lang;}
else
{new_lang="hdevelop";}
toggleLanguage(new_lang,1);return;}
-->

  </script>
</head>
<body onload="initialize();">
<div class="breadcrumb">
<br class="inv"><a href="index.html">目录</a> / <a href="toc_calibration.html">Calibration</a> / <a href="toc_calibration_multiview.html">Multi-View</a><br class="inv">
</div>
<div class="body_main">
<div class="tabbar"><ul class="tabs">
<li id="syn-hdevelop" class="active"><a href="javascript:void(0);" onclick="toggleLanguage('hdevelop')" onfocus="blur()">HDevelop</a></li>
<li id="syn-dotnet" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('dotnet')" onfocus="blur()">.NET</a></li>
<li id="syn-python" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('python')" onfocus="blur()">Python</a></li>
<li id="syn-cpp" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('cpp')" onfocus="blur()">C++</a></li>
<li id="syn-c" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('c')" onfocus="blur()">C</a></li>
</ul></div>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<!--OP_REF_HEADER_END-->
<h1 id="sec_name">
<span data-if="hdevelop" style="display:inline;">set_calib_data</span><span data-if="c" style="display:none;">T_set_calib_data</span><span data-if="cpp" style="display:none;">SetCalibData</span><span data-if="dotnet" style="display:none;">SetCalibData</span><span data-if="python" style="display:none;">set_calib_data</span> (算子名称)</h1>
<h2>名称</h2>
<p><code><span data-if="hdevelop" style="display:inline;">set_calib_data</span><span data-if="c" style="display:none;">T_set_calib_data</span><span data-if="cpp" style="display:none;">SetCalibData</span><span data-if="dotnet" style="display:none;">SetCalibData</span><span data-if="python" style="display:none;">set_calib_data</span></code> — Set data in a calibration data model.</p>
<h2 id="sec_synopsis">参数签名</h2>
<div data-if="hdevelop" style="display:inline;">
<p>
<code><b>set_calib_data</b>( :  : <a href="#CalibDataID"><i>CalibDataID</i></a>, <a href="#ItemType"><i>ItemType</i></a>, <a href="#ItemIdx"><i>ItemIdx</i></a>, <a href="#DataName"><i>DataName</i></a>, <a href="#DataValue"><i>DataValue</i></a> : )</code></p>
</div>
<div data-if="c" style="display:none;">
<p>
<code>Herror <b>T_set_calib_data</b>(const Htuple <a href="#CalibDataID"><i>CalibDataID</i></a>, const Htuple <a href="#ItemType"><i>ItemType</i></a>, const Htuple <a href="#ItemIdx"><i>ItemIdx</i></a>, const Htuple <a href="#DataName"><i>DataName</i></a>, const Htuple <a href="#DataValue"><i>DataValue</i></a>)</code></p>
</div>
<div data-if="cpp" style="display:none;">
<p>
<code>void <b>SetCalibData</b>(const HTuple&amp; <a href="#CalibDataID"><i>CalibDataID</i></a>, const HTuple&amp; <a href="#ItemType"><i>ItemType</i></a>, const HTuple&amp; <a href="#ItemIdx"><i>ItemIdx</i></a>, const HTuple&amp; <a href="#DataName"><i>DataName</i></a>, const HTuple&amp; <a href="#DataValue"><i>DataValue</i></a>)</code></p>
<p>
<code>void <a href="HCalibData.html">HCalibData</a>::<b>SetCalibData</b>(const HString&amp; <a href="#ItemType"><i>ItemType</i></a>, const HTuple&amp; <a href="#ItemIdx"><i>ItemIdx</i></a>, const HString&amp; <a href="#DataName"><i>DataName</i></a>, const HTuple&amp; <a href="#DataValue"><i>DataValue</i></a>) const</code></p>
<p>
<code>void <a href="HCalibData.html">HCalibData</a>::<b>SetCalibData</b>(const HString&amp; <a href="#ItemType"><i>ItemType</i></a>, Hlong <a href="#ItemIdx"><i>ItemIdx</i></a>, const HString&amp; <a href="#DataName"><i>DataName</i></a>, const HString&amp; <a href="#DataValue"><i>DataValue</i></a>) const</code></p>
<p>
<code>void <a href="HCalibData.html">HCalibData</a>::<b>SetCalibData</b>(const char* <a href="#ItemType"><i>ItemType</i></a>, Hlong <a href="#ItemIdx"><i>ItemIdx</i></a>, const char* <a href="#DataName"><i>DataName</i></a>, const char* <a href="#DataValue"><i>DataValue</i></a>) const</code></p>
<p>
<code>void <a href="HCalibData.html">HCalibData</a>::<b>SetCalibData</b>(const wchar_t* <a href="#ItemType"><i>ItemType</i></a>, Hlong <a href="#ItemIdx"><i>ItemIdx</i></a>, const wchar_t* <a href="#DataName"><i>DataName</i></a>, const wchar_t* <a href="#DataValue"><i>DataValue</i></a>) const  <span class="signnote">
            (
            Windows only)
          </span></code></p>
</div>
<div data-if="com" style="display:none;"></div>
<div data-if="dotnet" style="display:none;">
<p>
<code>static void <a href="HOperatorSet.html">HOperatorSet</a>.<b>SetCalibData</b>(<a href="HTuple.html">HTuple</a> <a href="#CalibDataID"><i>calibDataID</i></a>, <a href="HTuple.html">HTuple</a> <a href="#ItemType"><i>itemType</i></a>, <a href="HTuple.html">HTuple</a> <a href="#ItemIdx"><i>itemIdx</i></a>, <a href="HTuple.html">HTuple</a> <a href="#DataName"><i>dataName</i></a>, <a href="HTuple.html">HTuple</a> <a href="#DataValue"><i>dataValue</i></a>)</code></p>
<p>
<code>void <a href="HCalibData.html">HCalibData</a>.<b>SetCalibData</b>(string <a href="#ItemType"><i>itemType</i></a>, <a href="HTuple.html">HTuple</a> <a href="#ItemIdx"><i>itemIdx</i></a>, string <a href="#DataName"><i>dataName</i></a>, <a href="HTuple.html">HTuple</a> <a href="#DataValue"><i>dataValue</i></a>)</code></p>
<p>
<code>void <a href="HCalibData.html">HCalibData</a>.<b>SetCalibData</b>(string <a href="#ItemType"><i>itemType</i></a>, int <a href="#ItemIdx"><i>itemIdx</i></a>, string <a href="#DataName"><i>dataName</i></a>, string <a href="#DataValue"><i>dataValue</i></a>)</code></p>
</div>
<div data-if="python" style="display:none;">
<p>
<code>def <b>set_calib_data</b>(<a href="#CalibDataID"><i>calib_data_id</i></a>: HHandle, <a href="#ItemType"><i>item_type</i></a>: str, <a href="#ItemIdx"><i>item_idx</i></a>: MaybeSequence[Union[int, str]], <a href="#DataName"><i>data_name</i></a>: str, <a href="#DataValue"><i>data_value</i></a>: MaybeSequence[Union[str, int]]) -&gt; None</code></p>
</div>
<h2 id="sec_description">描述</h2>
<p>With 该算子 <code><span data-if="hdevelop" style="display:inline">set_calib_data</span><span data-if="c" style="display:none">set_calib_data</span><span data-if="cpp" style="display:none">SetCalibData</span><span data-if="com" style="display:none">SetCalibData</span><span data-if="dotnet" style="display:none">SetCalibData</span><span data-if="python" style="display:none">set_calib_data</span></code>, you can set data in the
calibration data model <a href="#CalibDataID"><i><code><span data-if="hdevelop" style="display:inline">CalibDataID</span><span data-if="c" style="display:none">CalibDataID</span><span data-if="cpp" style="display:none">CalibDataID</span><span data-if="com" style="display:none">CalibDataID</span><span data-if="dotnet" style="display:none">calibDataID</span><span data-if="python" style="display:none">calib_data_id</span></code></i></a>.
</p>
<p>Note that an overview on how the calibration data model is filled
with data during the processes of camera calibration and hand-eye
calibration is provided by the description of
<a href="get_calib_data.html"><code><span data-if="hdevelop" style="display:inline">get_calib_data</span><span data-if="c" style="display:none">get_calib_data</span><span data-if="cpp" style="display:none">GetCalibData</span><span data-if="com" style="display:none">GetCalibData</span><span data-if="dotnet" style="display:none">GetCalibData</span><span data-if="python" style="display:none">get_calib_data</span></code></a>.
</p>
<p>The calibration data model can contain various kinds of data. How to
set specific data in the calibration data model is described for
different categories of data:
</p>
<ul>
<li>
<p> Model-related data (<a href="#ItemType"><i><code><span data-if="hdevelop" style="display:inline">ItemType</span><span data-if="c" style="display:none">ItemType</span><span data-if="cpp" style="display:none">ItemType</span><span data-if="com" style="display:none">ItemType</span><span data-if="dotnet" style="display:none">itemType</span><span data-if="python" style="display:none">item_type</span></code></i></a> <i><span data-if="hdevelop" style="display:inline">'model'</span><span data-if="c" style="display:none">"model"</span><span data-if="cpp" style="display:none">"model"</span><span data-if="com" style="display:none">"model"</span><span data-if="dotnet" style="display:none">"model"</span><span data-if="python" style="display:none">"model"</span></i>)
</p>
</li>
<li>
<p> Camera-related data (<a href="#ItemType"><i><code><span data-if="hdevelop" style="display:inline">ItemType</span><span data-if="c" style="display:none">ItemType</span><span data-if="cpp" style="display:none">ItemType</span><span data-if="com" style="display:none">ItemType</span><span data-if="dotnet" style="display:none">itemType</span><span data-if="python" style="display:none">item_type</span></code></i></a> <i><span data-if="hdevelop" style="display:inline">'camera'</span><span data-if="c" style="display:none">"camera"</span><span data-if="cpp" style="display:none">"camera"</span><span data-if="com" style="display:none">"camera"</span><span data-if="dotnet" style="display:none">"camera"</span><span data-if="python" style="display:none">"camera"</span></i>)
</p>
</li>
<li>
<p> Data related to calibration object poses (<a href="#ItemType"><i><code><span data-if="hdevelop" style="display:inline">ItemType</span><span data-if="c" style="display:none">ItemType</span><span data-if="cpp" style="display:none">ItemType</span><span data-if="com" style="display:none">ItemType</span><span data-if="dotnet" style="display:none">itemType</span><span data-if="python" style="display:none">item_type</span></code></i></a>
<i><span data-if="hdevelop" style="display:inline">'calib_obj_pose'</span><span data-if="c" style="display:none">"calib_obj_pose"</span><span data-if="cpp" style="display:none">"calib_obj_pose"</span><span data-if="com" style="display:none">"calib_obj_pose"</span><span data-if="dotnet" style="display:none">"calib_obj_pose"</span><span data-if="python" style="display:none">"calib_obj_pose"</span></i>)
</p>
</li>
<li>
<p> Hand-eye calibration related data (<a href="#ItemType"><i><code><span data-if="hdevelop" style="display:inline">ItemType</span><span data-if="c" style="display:none">ItemType</span><span data-if="cpp" style="display:none">ItemType</span><span data-if="com" style="display:none">ItemType</span><span data-if="dotnet" style="display:none">itemType</span><span data-if="python" style="display:none">item_type</span></code></i></a>
<i><span data-if="hdevelop" style="display:inline">'tool'</span><span data-if="c" style="display:none">"tool"</span><span data-if="cpp" style="display:none">"tool"</span><span data-if="com" style="display:none">"tool"</span><span data-if="dotnet" style="display:none">"tool"</span><span data-if="python" style="display:none">"tool"</span></i>)
</p>
</li>
</ul>
<p>The parameter <a href="#ItemIdx"><i><code><span data-if="hdevelop" style="display:inline">ItemIdx</span><span data-if="c" style="display:none">ItemIdx</span><span data-if="cpp" style="display:none">ItemIdx</span><span data-if="com" style="display:none">ItemIdx</span><span data-if="dotnet" style="display:none">itemIdx</span><span data-if="python" style="display:none">item_idx</span></code></i></a> lets you select whether the new
value should be set for all items of a type or only for an
individual one.  The parameters to set are passed in
<a href="#DataName"><i><code><span data-if="hdevelop" style="display:inline">DataName</span><span data-if="c" style="display:none">DataName</span><span data-if="cpp" style="display:none">DataName</span><span data-if="com" style="display:none">DataName</span><span data-if="dotnet" style="display:none">dataName</span><span data-if="python" style="display:none">data_name</span></code></i></a>, their values in <a href="#DataValue"><i><code><span data-if="hdevelop" style="display:inline">DataValue</span><span data-if="c" style="display:none">DataValue</span><span data-if="cpp" style="display:none">DataValue</span><span data-if="com" style="display:none">DataValue</span><span data-if="dotnet" style="display:none">dataValue</span><span data-if="python" style="display:none">data_value</span></code></i></a>.
</p>
<p>To get detailed information about the calibration process of
your camera setup see the chapter <a href="toc_calibration.html">Calibration</a>.
</p>
<h3>Model-related data</h3>
<dl class="generic">

<dt><b><a href="#ItemType"><i><code><span data-if="hdevelop" style="display:inline">ItemType</span><span data-if="c" style="display:none">ItemType</span><span data-if="cpp" style="display:none">ItemType</span><span data-if="com" style="display:none">ItemType</span><span data-if="dotnet" style="display:none">itemType</span><span data-if="python" style="display:none">item_type</span></code></i></a>=<i><span data-if="hdevelop" style="display:inline">'model'</span><span data-if="c" style="display:none">"model"</span><span data-if="cpp" style="display:none">"model"</span><span data-if="com" style="display:none">"model"</span><span data-if="dotnet" style="display:none">"model"</span><span data-if="python" style="display:none">"model"</span></i>:</b></dt>
<dd>


<p><a href="#ItemIdx"><i><code><span data-if="hdevelop" style="display:inline">ItemIdx</span><span data-if="c" style="display:none">ItemIdx</span><span data-if="cpp" style="display:none">ItemIdx</span><span data-if="com" style="display:none">ItemIdx</span><span data-if="dotnet" style="display:none">itemIdx</span><span data-if="python" style="display:none">item_idx</span></code></i></a> must be set to <i><span data-if="hdevelop" style="display:inline">'general'</span><span data-if="c" style="display:none">"general"</span><span data-if="cpp" style="display:none">"general"</span><span data-if="com" style="display:none">"general"</span><span data-if="dotnet" style="display:none">"general"</span><span data-if="python" style="display:none">"general"</span></i>.
</p>
<p>Depending on
the selection in <a href="#DataName"><i><code><span data-if="hdevelop" style="display:inline">DataName</span><span data-if="c" style="display:none">DataName</span><span data-if="cpp" style="display:none">DataName</span><span data-if="com" style="display:none">DataName</span><span data-if="dotnet" style="display:none">dataName</span><span data-if="python" style="display:none">data_name</span></code></i></a>, you can set the following
model-related parameters to the value passed in <a href="#DataValue"><i><code><span data-if="hdevelop" style="display:inline">DataValue</span><span data-if="c" style="display:none">DataValue</span><span data-if="cpp" style="display:none">DataValue</span><span data-if="com" style="display:none">DataValue</span><span data-if="dotnet" style="display:none">dataValue</span><span data-if="python" style="display:none">data_value</span></code></i></a>:
</p>
<dl class="generic">

<dt><b><i><span data-if="hdevelop" style="display:inline">'reference_camera'</span><span data-if="c" style="display:none">"reference_camera"</span><span data-if="cpp" style="display:none">"reference_camera"</span><span data-if="com" style="display:none">"reference_camera"</span><span data-if="dotnet" style="display:none">"reference_camera"</span><span data-if="python" style="display:none">"reference_camera"</span></i>:</b></dt>
<dd><p>

Set the reference camera for the calibration model to the passed
camera index.  All poses stored in the calibration data model
are specified in the coordinate system of the reference camera
(see <a href="get_calib_data.html"><code><span data-if="hdevelop" style="display:inline">get_calib_data</span><span data-if="c" style="display:none">get_calib_data</span><span data-if="cpp" style="display:none">GetCalibData</span><span data-if="com" style="display:none">GetCalibData</span><span data-if="dotnet" style="display:none">GetCalibData</span><span data-if="python" style="display:none">get_calib_data</span></code></a>).
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'common_motion_vector'</span><span data-if="c" style="display:none">"common_motion_vector"</span><span data-if="cpp" style="display:none">"common_motion_vector"</span><span data-if="com" style="display:none">"common_motion_vector"</span><span data-if="dotnet" style="display:none">"common_motion_vector"</span><span data-if="python" style="display:none">"common_motion_vector"</span></i>:</b></dt>
<dd><p>

For stereo setups with telecentric line scan cameras, a string
with a Boolean value (i.e., <i><span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span></i> or <i><span data-if="hdevelop" style="display:inline">'false'</span><span data-if="c" style="display:none">"false"</span><span data-if="cpp" style="display:none">"false"</span><span data-if="com" style="display:none">"false"</span><span data-if="dotnet" style="display:none">"false"</span><span data-if="python" style="display:none">"false"</span></i>)
that determines whether the cameras have a common motion vector.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'optimization_method'</span><span data-if="c" style="display:none">"optimization_method"</span><span data-if="cpp" style="display:none">"optimization_method"</span><span data-if="com" style="display:none">"optimization_method"</span><span data-if="dotnet" style="display:none">"optimization_method"</span><span data-if="python" style="display:none">"optimization_method"</span></i>:</b></dt>
<dd><p>

Set the optimization method to be used in the hand-eye
calibration process.  If <a href="#DataValue"><i><code><span data-if="hdevelop" style="display:inline">DataValue</span><span data-if="c" style="display:none">DataValue</span><span data-if="cpp" style="display:none">DataValue</span><span data-if="com" style="display:none">DataValue</span><span data-if="dotnet" style="display:none">dataValue</span><span data-if="python" style="display:none">data_value</span></code></i></a>=<i><span data-if="hdevelop" style="display:inline">'linear'</span><span data-if="c" style="display:none">"linear"</span><span data-if="cpp" style="display:none">"linear"</span><span data-if="com" style="display:none">"linear"</span><span data-if="dotnet" style="display:none">"linear"</span><span data-if="python" style="display:none">"linear"</span></i> is
set, a linear method is used for the hand-eye calibration.  If
<a href="#DataValue"><i><code><span data-if="hdevelop" style="display:inline">DataValue</span><span data-if="c" style="display:none">DataValue</span><span data-if="cpp" style="display:none">DataValue</span><span data-if="com" style="display:none">DataValue</span><span data-if="dotnet" style="display:none">dataValue</span><span data-if="python" style="display:none">data_value</span></code></i></a>=<i><span data-if="hdevelop" style="display:inline">'nonlinear'</span><span data-if="c" style="display:none">"nonlinear"</span><span data-if="cpp" style="display:none">"nonlinear"</span><span data-if="com" style="display:none">"nonlinear"</span><span data-if="dotnet" style="display:none">"nonlinear"</span><span data-if="python" style="display:none">"nonlinear"</span></i> is set, a nonlinear method
is used for the hand-eye calibration. If
<a href="#DataValue"><i><code><span data-if="hdevelop" style="display:inline">DataValue</span><span data-if="c" style="display:none">DataValue</span><span data-if="cpp" style="display:none">DataValue</span><span data-if="com" style="display:none">DataValue</span><span data-if="dotnet" style="display:none">dataValue</span><span data-if="python" style="display:none">data_value</span></code></i></a>=<i><span data-if="hdevelop" style="display:inline">'stochastic'</span><span data-if="c" style="display:none">"stochastic"</span><span data-if="cpp" style="display:none">"stochastic"</span><span data-if="com" style="display:none">"stochastic"</span><span data-if="dotnet" style="display:none">"stochastic"</span><span data-if="python" style="display:none">"stochastic"</span></i> is set, a method is used
which also takes the uncertainty of measured observations
into account (see <a href="calibrate_hand_eye.html"><code><span data-if="hdevelop" style="display:inline">calibrate_hand_eye</span><span data-if="c" style="display:none">calibrate_hand_eye</span><span data-if="cpp" style="display:none">CalibrateHandEye</span><span data-if="com" style="display:none">CalibrateHandEye</span><span data-if="dotnet" style="display:none">CalibrateHandEye</span><span data-if="python" style="display:none">calibrate_hand_eye</span></code></a> for more details).
</p></dd>
</dl>

</dd>
</dl>
<h3>Camera-related data</h3>
<dl class="generic">

<dt><b><a href="#ItemType"><i><code><span data-if="hdevelop" style="display:inline">ItemType</span><span data-if="c" style="display:none">ItemType</span><span data-if="cpp" style="display:none">ItemType</span><span data-if="com" style="display:none">ItemType</span><span data-if="dotnet" style="display:none">itemType</span><span data-if="python" style="display:none">item_type</span></code></i></a>=<i><span data-if="hdevelop" style="display:inline">'camera'</span><span data-if="c" style="display:none">"camera"</span><span data-if="cpp" style="display:none">"camera"</span><span data-if="com" style="display:none">"camera"</span><span data-if="dotnet" style="display:none">"camera"</span><span data-if="python" style="display:none">"camera"</span></i>:</b></dt>
<dd>


<p><a href="#ItemIdx"><i><code><span data-if="hdevelop" style="display:inline">ItemIdx</span><span data-if="c" style="display:none">ItemIdx</span><span data-if="cpp" style="display:none">ItemIdx</span><span data-if="com" style="display:none">ItemIdx</span><span data-if="dotnet" style="display:none">itemIdx</span><span data-if="python" style="display:none">item_idx</span></code></i></a> determines, if data is set for all cameras in
general or for a specific camera.  With
<a href="#ItemIdx"><i><code><span data-if="hdevelop" style="display:inline">ItemIdx</span><span data-if="c" style="display:none">ItemIdx</span><span data-if="cpp" style="display:none">ItemIdx</span><span data-if="com" style="display:none">ItemIdx</span><span data-if="dotnet" style="display:none">itemIdx</span><span data-if="python" style="display:none">item_idx</span></code></i></a>=<i><span data-if="hdevelop" style="display:inline">'general'</span><span data-if="c" style="display:none">"general"</span><span data-if="cpp" style="display:none">"general"</span><span data-if="com" style="display:none">"general"</span><span data-if="dotnet" style="display:none">"general"</span><span data-if="python" style="display:none">"general"</span></i>, the new settings are applied
to all cameras in the model. If you pass a valid camera index
instead, i.e., a number between 0 and <code><span data-if="hdevelop" style="display:inline">NumCameras</span><span data-if="c" style="display:none">NumCameras</span><span data-if="cpp" style="display:none">NumCameras</span><span data-if="com" style="display:none">NumCameras</span><span data-if="dotnet" style="display:none">numCameras</span><span data-if="python" style="display:none">num_cameras</span></code>-1
(<code><span data-if="hdevelop" style="display:inline">NumCameras</span><span data-if="c" style="display:none">NumCameras</span><span data-if="cpp" style="display:none">NumCameras</span><span data-if="com" style="display:none">NumCameras</span><span data-if="dotnet" style="display:none">numCameras</span><span data-if="python" style="display:none">num_cameras</span></code> is specified during model creation with
<a href="create_calib_data.html"><code><span data-if="hdevelop" style="display:inline">create_calib_data</span><span data-if="c" style="display:none">create_calib_data</span><span data-if="cpp" style="display:none">CreateCalibData</span><span data-if="com" style="display:none">CreateCalibData</span><span data-if="dotnet" style="display:none">CreateCalibData</span><span data-if="python" style="display:none">create_calib_data</span></code></a>), only the specified camera is affected
by the changes.
</p>
<p>By selecting the following parameters in <a href="#DataName"><i><code><span data-if="hdevelop" style="display:inline">DataName</span><span data-if="c" style="display:none">DataName</span><span data-if="cpp" style="display:none">DataName</span><span data-if="com" style="display:none">DataName</span><span data-if="dotnet" style="display:none">dataName</span><span data-if="python" style="display:none">data_name</span></code></i></a>, you can
<b>specify which camera parameters shall be optimized during
the calibration</b> performed by <a href="calibrate_cameras.html"><code><span data-if="hdevelop" style="display:inline">calibrate_cameras</span><span data-if="c" style="display:none">calibrate_cameras</span><span data-if="cpp" style="display:none">CalibrateCameras</span><span data-if="com" style="display:none">CalibrateCameras</span><span data-if="dotnet" style="display:none">CalibrateCameras</span><span data-if="python" style="display:none">calibrate_cameras</span></code></a>:
</p>
<dl class="generic">

<dt><b><i><span data-if="hdevelop" style="display:inline">'calib_settings'</span><span data-if="c" style="display:none">"calib_settings"</span><span data-if="cpp" style="display:none">"calib_settings"</span><span data-if="com" style="display:none">"calib_settings"</span><span data-if="dotnet" style="display:none">"calib_settings"</span><span data-if="python" style="display:none">"calib_settings"</span></i>:</b></dt>
<dd><p>

The camera parameters listed in <a href="#DataValue"><i><code><span data-if="hdevelop" style="display:inline">DataValue</span><span data-if="c" style="display:none">DataValue</span><span data-if="cpp" style="display:none">DataValue</span><span data-if="com" style="display:none">DataValue</span><span data-if="dotnet" style="display:none">dataValue</span><span data-if="python" style="display:none">data_value</span></code></i></a> are marked
for optimization for the affected camera(s) (additionally to the
camera parameters that were already marked for
optimization). Note that by default, all parameters are marked
for the optimization. That is, <i><span data-if="hdevelop" style="display:inline">'calib_settings'</span><span data-if="c" style="display:none">"calib_settings"</span><span data-if="cpp" style="display:none">"calib_settings"</span><span data-if="com" style="display:none">"calib_settings"</span><span data-if="dotnet" style="display:none">"calib_settings"</span><span data-if="python" style="display:none">"calib_settings"</span></i> is
mainly suited to add previously excluded parameters again.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'excluded_settings'</span><span data-if="c" style="display:none">"excluded_settings"</span><span data-if="cpp" style="display:none">"excluded_settings"</span><span data-if="com" style="display:none">"excluded_settings"</span><span data-if="dotnet" style="display:none">"excluded_settings"</span><span data-if="python" style="display:none">"excluded_settings"</span></i>:</b></dt>
<dd><p>

The camera parameters listed in <a href="#DataValue"><i><code><span data-if="hdevelop" style="display:inline">DataValue</span><span data-if="c" style="display:none">DataValue</span><span data-if="cpp" style="display:none">DataValue</span><span data-if="com" style="display:none">DataValue</span><span data-if="dotnet" style="display:none">dataValue</span><span data-if="python" style="display:none">data_value</span></code></i></a> are excluded
from the optimization for the affected camera(s).
</p></dd>
</dl>

<p>The following camera parameters can be passed in <a href="#DataValue"><i><code><span data-if="hdevelop" style="display:inline">DataValue</span><span data-if="c" style="display:none">DataValue</span><span data-if="cpp" style="display:none">DataValue</span><span data-if="com" style="display:none">DataValue</span><span data-if="dotnet" style="display:none">dataValue</span><span data-if="python" style="display:none">data_value</span></code></i></a>.
See <a href="toc_calibration.html">Calibration</a> for affected camera types and further details
about the parameters.
</p>
<p><i>Internal camera parameters</i> </p>

<dl class="generic">

<dt><b><i><span data-if="hdevelop" style="display:inline">'focus'</span><span data-if="c" style="display:none">"focus"</span><span data-if="cpp" style="display:none">"focus"</span><span data-if="com" style="display:none">"focus"</span><span data-if="dotnet" style="display:none">"focus"</span><span data-if="python" style="display:none">"focus"</span></i>:</b></dt>
<dd><p>

Focal length of the lens.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'magnification'</span><span data-if="c" style="display:none">"magnification"</span><span data-if="cpp" style="display:none">"magnification"</span><span data-if="com" style="display:none">"magnification"</span><span data-if="dotnet" style="display:none">"magnification"</span><span data-if="python" style="display:none">"magnification"</span></i>:</b></dt>
<dd><p>

Magnification of the lens.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'kappa'</span><span data-if="c" style="display:none">"kappa"</span><span data-if="cpp" style="display:none">"kappa"</span><span data-if="com" style="display:none">"kappa"</span><span data-if="dotnet" style="display:none">"kappa"</span><span data-if="python" style="display:none">"kappa"</span></i>:</b></dt>
<dd><p>

Divisional distortion coefficient kappa.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'k1'</span><span data-if="c" style="display:none">"k1"</span><span data-if="cpp" style="display:none">"k1"</span><span data-if="com" style="display:none">"k1"</span><span data-if="dotnet" style="display:none">"k1"</span><span data-if="python" style="display:none">"k1"</span></i>,<i><span data-if="hdevelop" style="display:inline">'k2'</span><span data-if="c" style="display:none">"k2"</span><span data-if="cpp" style="display:none">"k2"</span><span data-if="com" style="display:none">"k2"</span><span data-if="dotnet" style="display:none">"k2"</span><span data-if="python" style="display:none">"k2"</span></i>,<i><span data-if="hdevelop" style="display:inline">'k3'</span><span data-if="c" style="display:none">"k3"</span><span data-if="cpp" style="display:none">"k3"</span><span data-if="com" style="display:none">"k3"</span><span data-if="dotnet" style="display:none">"k3"</span><span data-if="python" style="display:none">"k3"</span></i>:</b></dt>
<dd><p>

Polynomial radial distortion parameters.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'poly_tan_2'</span><span data-if="c" style="display:none">"poly_tan_2"</span><span data-if="cpp" style="display:none">"poly_tan_2"</span><span data-if="com" style="display:none">"poly_tan_2"</span><span data-if="dotnet" style="display:none">"poly_tan_2"</span><span data-if="python" style="display:none">"poly_tan_2"</span></i>:</b></dt>
<dd><p>

An alias parameter for all polynomial tangential distortion
parameters, i.e., p1 and p2.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'poly'</span><span data-if="c" style="display:none">"poly"</span><span data-if="cpp" style="display:none">"poly"</span><span data-if="com" style="display:none">"poly"</span><span data-if="dotnet" style="display:none">"poly"</span><span data-if="python" style="display:none">"poly"</span></i>:</b></dt>
<dd><p>

An alias parameter for all polynomial distortion
parameters, i.e., k1, k2, k3, p1, and p2.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'image_plane_dist'</span><span data-if="c" style="display:none">"image_plane_dist"</span><span data-if="cpp" style="display:none">"image_plane_dist"</span><span data-if="com" style="display:none">"image_plane_dist"</span><span data-if="dotnet" style="display:none">"image_plane_dist"</span><span data-if="python" style="display:none">"image_plane_dist"</span></i>:</b></dt>
<dd><p>

The distance of the tilted image plane from the perspective
projection center.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'tilt'</span><span data-if="c" style="display:none">"tilt"</span><span data-if="cpp" style="display:none">"tilt"</span><span data-if="com" style="display:none">"tilt"</span><span data-if="dotnet" style="display:none">"tilt"</span><span data-if="python" style="display:none">"tilt"</span></i>:</b></dt>
<dd><p>

Tilt and rotation of the tilt lens.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'cx'</span><span data-if="c" style="display:none">"cx"</span><span data-if="cpp" style="display:none">"cx"</span><span data-if="com" style="display:none">"cx"</span><span data-if="dotnet" style="display:none">"cx"</span><span data-if="python" style="display:none">"cx"</span></i>,<i><span data-if="hdevelop" style="display:inline">'cy'</span><span data-if="c" style="display:none">"cy"</span><span data-if="cpp" style="display:none">"cy"</span><span data-if="com" style="display:none">"cy"</span><span data-if="dotnet" style="display:none">"cy"</span><span data-if="python" style="display:none">"cy"</span></i>:</b></dt>
<dd><p>

Coordinates of the camera's principal point.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'principal_point'</span><span data-if="c" style="display:none">"principal_point"</span><span data-if="cpp" style="display:none">"principal_point"</span><span data-if="com" style="display:none">"principal_point"</span><span data-if="dotnet" style="display:none">"principal_point"</span><span data-if="python" style="display:none">"principal_point"</span></i>:</b></dt>
<dd><p>

An alias parameter for <i><span data-if="hdevelop" style="display:inline">'cx'</span><span data-if="c" style="display:none">"cx"</span><span data-if="cpp" style="display:none">"cx"</span><span data-if="com" style="display:none">"cx"</span><span data-if="dotnet" style="display:none">"cx"</span><span data-if="python" style="display:none">"cx"</span></i> and <i><span data-if="hdevelop" style="display:inline">'cy'</span><span data-if="c" style="display:none">"cy"</span><span data-if="cpp" style="display:none">"cy"</span><span data-if="com" style="display:none">"cy"</span><span data-if="dotnet" style="display:none">"cy"</span><span data-if="python" style="display:none">"cy"</span></i>.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'sx'</span><span data-if="c" style="display:none">"sx"</span><span data-if="cpp" style="display:none">"sx"</span><span data-if="com" style="display:none">"sx"</span><span data-if="dotnet" style="display:none">"sx"</span><span data-if="python" style="display:none">"sx"</span></i>,<i><span data-if="hdevelop" style="display:inline">'sy'</span><span data-if="c" style="display:none">"sy"</span><span data-if="cpp" style="display:none">"sy"</span><span data-if="com" style="display:none">"sy"</span><span data-if="dotnet" style="display:none">"sy"</span><span data-if="python" style="display:none">"sy"</span></i>:</b></dt>
<dd><p>

Sensor element dimensions.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'params'</span><span data-if="c" style="display:none">"params"</span><span data-if="cpp" style="display:none">"params"</span><span data-if="com" style="display:none">"params"</span><span data-if="dotnet" style="display:none">"params"</span><span data-if="python" style="display:none">"params"</span></i>:</b></dt>
<dd><p>

All internal camera parameters.
</p></dd>
</dl>

<p><i>External camera parameters</i> </p>

<dl class="generic">

<dt><b><i><span data-if="hdevelop" style="display:inline">'alpha'</span><span data-if="c" style="display:none">"alpha"</span><span data-if="cpp" style="display:none">"alpha"</span><span data-if="com" style="display:none">"alpha"</span><span data-if="dotnet" style="display:none">"alpha"</span><span data-if="python" style="display:none">"alpha"</span></i>,<i><span data-if="hdevelop" style="display:inline">'beta'</span><span data-if="c" style="display:none">"beta"</span><span data-if="cpp" style="display:none">"beta"</span><span data-if="com" style="display:none">"beta"</span><span data-if="dotnet" style="display:none">"beta"</span><span data-if="python" style="display:none">"beta"</span></i>,<i><span data-if="hdevelop" style="display:inline">'gamma'</span><span data-if="c" style="display:none">"gamma"</span><span data-if="cpp" style="display:none">"gamma"</span><span data-if="com" style="display:none">"gamma"</span><span data-if="dotnet" style="display:none">"gamma"</span><span data-if="python" style="display:none">"gamma"</span></i>:</b></dt>
<dd><p>

Rotation part of the camera pose.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'transx'</span><span data-if="c" style="display:none">"transx"</span><span data-if="cpp" style="display:none">"transx"</span><span data-if="com" style="display:none">"transx"</span><span data-if="dotnet" style="display:none">"transx"</span><span data-if="python" style="display:none">"transx"</span></i>,<i><span data-if="hdevelop" style="display:inline">'transy'</span><span data-if="c" style="display:none">"transy"</span><span data-if="cpp" style="display:none">"transy"</span><span data-if="com" style="display:none">"transy"</span><span data-if="dotnet" style="display:none">"transy"</span><span data-if="python" style="display:none">"transy"</span></i>,<i><span data-if="hdevelop" style="display:inline">'transz'</span><span data-if="c" style="display:none">"transz"</span><span data-if="cpp" style="display:none">"transz"</span><span data-if="com" style="display:none">"transz"</span><span data-if="dotnet" style="display:none">"transz"</span><span data-if="python" style="display:none">"transz"</span></i>:</b></dt>
<dd><p>

Translation part of the camera pose.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'pose'</span><span data-if="c" style="display:none">"pose"</span><span data-if="cpp" style="display:none">"pose"</span><span data-if="com" style="display:none">"pose"</span><span data-if="dotnet" style="display:none">"pose"</span><span data-if="python" style="display:none">"pose"</span></i>:</b></dt>
<dd><p>

All external camera parameters.
</p></dd>
</dl>

<p><i>Further camera parameters</i> </p>

<dl class="generic">

<dt><b><i><span data-if="hdevelop" style="display:inline">'vx'</span><span data-if="c" style="display:none">"vx"</span><span data-if="cpp" style="display:none">"vx"</span><span data-if="com" style="display:none">"vx"</span><span data-if="dotnet" style="display:none">"vx"</span><span data-if="python" style="display:none">"vx"</span></i>,<i><span data-if="hdevelop" style="display:inline">'vy'</span><span data-if="c" style="display:none">"vy"</span><span data-if="cpp" style="display:none">"vy"</span><span data-if="com" style="display:none">"vy"</span><span data-if="dotnet" style="display:none">"vy"</span><span data-if="python" style="display:none">"vy"</span></i>,<i><span data-if="hdevelop" style="display:inline">'vz'</span><span data-if="c" style="display:none">"vz"</span><span data-if="cpp" style="display:none">"vz"</span><span data-if="com" style="display:none">"vz"</span><span data-if="dotnet" style="display:none">"vz"</span><span data-if="python" style="display:none">"vz"</span></i>:</b></dt>
<dd><p>

Motion vector parameters.
Note that for stereo setups with telecentric line scan cameras with a
common motion vector (i.e.,
<i><span data-if="hdevelop" style="display:inline">'common_motion_vector'</span><span data-if="c" style="display:none">"common_motion_vector"</span><span data-if="cpp" style="display:none">"common_motion_vector"</span><span data-if="com" style="display:none">"common_motion_vector"</span><span data-if="dotnet" style="display:none">"common_motion_vector"</span><span data-if="python" style="display:none">"common_motion_vector"</span></i> = <i><span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span></i>),
the motion vector optimization parameters
of the reference camera determine which parameters of the common
motion vector are optimized.  For this kind of setup, it is
recommended not to exclude any motion vector parameters from the
optimization.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'all'</span><span data-if="c" style="display:none">"all"</span><span data-if="cpp" style="display:none">"all"</span><span data-if="com" style="display:none">"all"</span><span data-if="dotnet" style="display:none">"all"</span><span data-if="python" style="display:none">"all"</span></i>:</b></dt>
<dd><p>

All camera parameters.
</p></dd>
</dl>

<p>By default, all parameters are marked for calibration. As an
exception, the camera pose is excluded from the optimization for
calibration setups with only one camera
(<code><span data-if="hdevelop" style="display:inline">NumCameras</span><span data-if="c" style="display:none">NumCameras</span><span data-if="cpp" style="display:none">NumCameras</span><span data-if="com" style="display:none">NumCameras</span><span data-if="dotnet" style="display:none">numCameras</span><span data-if="python" style="display:none">num_cameras</span></code>=1). This setting makes the calibration process
equivalent to the one performed by <a href="camera_calibration.html"><code><span data-if="hdevelop" style="display:inline">camera_calibration</span><span data-if="c" style="display:none">camera_calibration</span><span data-if="cpp" style="display:none">CameraCalibration</span><span data-if="com" style="display:none">CameraCalibration</span><span data-if="dotnet" style="display:none">CameraCalibration</span><span data-if="python" style="display:none">camera_calibration</span></code></a>.
</p>
</dd>
</dl>
<h3>Data related to calibration object poses</h3>
<dl class="generic">

<dt><b><a href="#ItemType"><i><code><span data-if="hdevelop" style="display:inline">ItemType</span><span data-if="c" style="display:none">ItemType</span><span data-if="cpp" style="display:none">ItemType</span><span data-if="com" style="display:none">ItemType</span><span data-if="dotnet" style="display:none">itemType</span><span data-if="python" style="display:none">item_type</span></code></i></a>=<i><span data-if="hdevelop" style="display:inline">'calib_obj_pose'</span><span data-if="c" style="display:none">"calib_obj_pose"</span><span data-if="cpp" style="display:none">"calib_obj_pose"</span><span data-if="com" style="display:none">"calib_obj_pose"</span><span data-if="dotnet" style="display:none">"calib_obj_pose"</span><span data-if="python" style="display:none">"calib_obj_pose"</span></i>:</b></dt>
<dd>


<p><a href="#ItemIdx"><i><code><span data-if="hdevelop" style="display:inline">ItemIdx</span><span data-if="c" style="display:none">ItemIdx</span><span data-if="cpp" style="display:none">ItemIdx</span><span data-if="com" style="display:none">ItemIdx</span><span data-if="dotnet" style="display:none">itemIdx</span><span data-if="python" style="display:none">item_idx</span></code></i></a> determines, if data is set for all calibration
object poses in general or for a specific calibration object
pose. With <a href="#ItemIdx"><i><code><span data-if="hdevelop" style="display:inline">ItemIdx</span><span data-if="c" style="display:none">ItemIdx</span><span data-if="cpp" style="display:none">ItemIdx</span><span data-if="com" style="display:none">ItemIdx</span><span data-if="dotnet" style="display:none">itemIdx</span><span data-if="python" style="display:none">item_idx</span></code></i></a>=<i><span data-if="hdevelop" style="display:inline">'general'</span><span data-if="c" style="display:none">"general"</span><span data-if="cpp" style="display:none">"general"</span><span data-if="com" style="display:none">"general"</span><span data-if="dotnet" style="display:none">"general"</span><span data-if="python" style="display:none">"general"</span></i> the new settings
are applied to all calibration object poses in the model. If you
pass a valid calibration object pose index instead, i.e., a tuple
containing a valid index pair <code>[CalibObjIdx,
   CalibObjPoseIdx]</code>, you specify a calibration object pose, which
is affected by the changes.
</p>
<p>By selecting the following parameters in <a href="#DataName"><i><code><span data-if="hdevelop" style="display:inline">DataName</span><span data-if="c" style="display:none">DataName</span><span data-if="cpp" style="display:none">DataName</span><span data-if="com" style="display:none">DataName</span><span data-if="dotnet" style="display:none">dataName</span><span data-if="python" style="display:none">data_name</span></code></i></a>, you can
<b>specify which calibration object pose parameters shall be
optimized during the calibration</b> performed by
<a href="calibrate_cameras.html"><code><span data-if="hdevelop" style="display:inline">calibrate_cameras</span><span data-if="c" style="display:none">calibrate_cameras</span><span data-if="cpp" style="display:none">CalibrateCameras</span><span data-if="com" style="display:none">CalibrateCameras</span><span data-if="dotnet" style="display:none">CalibrateCameras</span><span data-if="python" style="display:none">calibrate_cameras</span></code></a>:
</p>
<dl class="generic">

<dt><b><i><span data-if="hdevelop" style="display:inline">'calib_settings'</span><span data-if="c" style="display:none">"calib_settings"</span><span data-if="cpp" style="display:none">"calib_settings"</span><span data-if="com" style="display:none">"calib_settings"</span><span data-if="dotnet" style="display:none">"calib_settings"</span><span data-if="python" style="display:none">"calib_settings"</span></i>:</b></dt>
<dd><p>

The calibration object pose settings listed in
<a href="#DataValue"><i><code><span data-if="hdevelop" style="display:inline">DataValue</span><span data-if="c" style="display:none">DataValue</span><span data-if="cpp" style="display:none">DataValue</span><span data-if="com" style="display:none">DataValue</span><span data-if="dotnet" style="display:none">dataValue</span><span data-if="python" style="display:none">data_value</span></code></i></a> are marked for optimization for the affected
pose(s). Note that by default, all calibration pose parameters
are marked for the optimization. That is,
<i><span data-if="hdevelop" style="display:inline">'calib_settings'</span><span data-if="c" style="display:none">"calib_settings"</span><span data-if="cpp" style="display:none">"calib_settings"</span><span data-if="com" style="display:none">"calib_settings"</span><span data-if="dotnet" style="display:none">"calib_settings"</span><span data-if="python" style="display:none">"calib_settings"</span></i> is mainly suited to add previously
excluded parameters again.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'excluded_settings'</span><span data-if="c" style="display:none">"excluded_settings"</span><span data-if="cpp" style="display:none">"excluded_settings"</span><span data-if="com" style="display:none">"excluded_settings"</span><span data-if="dotnet" style="display:none">"excluded_settings"</span><span data-if="python" style="display:none">"excluded_settings"</span></i>:</b></dt>
<dd><p>

The calibration object pose settings listed in
<a href="#DataValue"><i><code><span data-if="hdevelop" style="display:inline">DataValue</span><span data-if="c" style="display:none">DataValue</span><span data-if="cpp" style="display:none">DataValue</span><span data-if="com" style="display:none">DataValue</span><span data-if="dotnet" style="display:none">dataValue</span><span data-if="python" style="display:none">data_value</span></code></i></a> are excluded from the optimization for the
affected pose(s).
</p></dd>
</dl>

<p>The following calibration pose parameters can be passed in
<a href="#DataValue"><i><code><span data-if="hdevelop" style="display:inline">DataValue</span><span data-if="c" style="display:none">DataValue</span><span data-if="cpp" style="display:none">DataValue</span><span data-if="com" style="display:none">DataValue</span><span data-if="dotnet" style="display:none">dataValue</span><span data-if="python" style="display:none">data_value</span></code></i></a>:
</p>
<dl class="generic">

<dt><b><i><span data-if="hdevelop" style="display:inline">'alpha'</span><span data-if="c" style="display:none">"alpha"</span><span data-if="cpp" style="display:none">"alpha"</span><span data-if="com" style="display:none">"alpha"</span><span data-if="dotnet" style="display:none">"alpha"</span><span data-if="python" style="display:none">"alpha"</span></i>,<i><span data-if="hdevelop" style="display:inline">'beta'</span><span data-if="c" style="display:none">"beta"</span><span data-if="cpp" style="display:none">"beta"</span><span data-if="com" style="display:none">"beta"</span><span data-if="dotnet" style="display:none">"beta"</span><span data-if="python" style="display:none">"beta"</span></i>,<i><span data-if="hdevelop" style="display:inline">'gamma'</span><span data-if="c" style="display:none">"gamma"</span><span data-if="cpp" style="display:none">"gamma"</span><span data-if="com" style="display:none">"gamma"</span><span data-if="dotnet" style="display:none">"gamma"</span><span data-if="python" style="display:none">"gamma"</span></i>:</b></dt>
<dd><p>

Rotation part of the calibration object pose.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'transx'</span><span data-if="c" style="display:none">"transx"</span><span data-if="cpp" style="display:none">"transx"</span><span data-if="com" style="display:none">"transx"</span><span data-if="dotnet" style="display:none">"transx"</span><span data-if="python" style="display:none">"transx"</span></i>,<i><span data-if="hdevelop" style="display:inline">'transy'</span><span data-if="c" style="display:none">"transy"</span><span data-if="cpp" style="display:none">"transy"</span><span data-if="com" style="display:none">"transy"</span><span data-if="dotnet" style="display:none">"transy"</span><span data-if="python" style="display:none">"transy"</span></i>,<i><span data-if="hdevelop" style="display:inline">'transz'</span><span data-if="c" style="display:none">"transz"</span><span data-if="cpp" style="display:none">"transz"</span><span data-if="com" style="display:none">"transz"</span><span data-if="dotnet" style="display:none">"transz"</span><span data-if="python" style="display:none">"transz"</span></i>:</b></dt>
<dd><p>

Translation part of the calibration object pose.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'pose'</span><span data-if="c" style="display:none">"pose"</span><span data-if="cpp" style="display:none">"pose"</span><span data-if="com" style="display:none">"pose"</span><span data-if="dotnet" style="display:none">"pose"</span><span data-if="python" style="display:none">"pose"</span></i>:</b></dt>
<dd><p>

All calibration object pose parameters.
</p></dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'all'</span><span data-if="c" style="display:none">"all"</span><span data-if="cpp" style="display:none">"all"</span><span data-if="com" style="display:none">"all"</span><span data-if="dotnet" style="display:none">"all"</span><span data-if="python" style="display:none">"all"</span></i>:</b></dt>
<dd><p>

All calibration objects optimization parameters,
i.e., the same as <i><span data-if="hdevelop" style="display:inline">'pose'</span><span data-if="c" style="display:none">"pose"</span><span data-if="cpp" style="display:none">"pose"</span><span data-if="com" style="display:none">"pose"</span><span data-if="dotnet" style="display:none">"pose"</span><span data-if="python" style="display:none">"pose"</span></i>.
</p></dd>
</dl>
<p>
By default all parameters are marked for calibration.
</p>
<p>The current settings for any model item can be queried with the
operator <a href="get_calib_data.html"><code><span data-if="hdevelop" style="display:inline">get_calib_data</span><span data-if="c" style="display:none">get_calib_data</span><span data-if="cpp" style="display:none">GetCalibData</span><span data-if="com" style="display:none">GetCalibData</span><span data-if="dotnet" style="display:none">GetCalibData</span><span data-if="python" style="display:none">get_calib_data</span></code></a>.
</p>
</dd>
</dl>
<h3>Hand-eye calibration related data</h3>
<dl class="generic">

<dt><b><a href="#ItemType"><i><code><span data-if="hdevelop" style="display:inline">ItemType</span><span data-if="c" style="display:none">ItemType</span><span data-if="cpp" style="display:none">ItemType</span><span data-if="com" style="display:none">ItemType</span><span data-if="dotnet" style="display:none">itemType</span><span data-if="python" style="display:none">item_type</span></code></i></a>=<i><span data-if="hdevelop" style="display:inline">'tool'</span><span data-if="c" style="display:none">"tool"</span><span data-if="cpp" style="display:none">"tool"</span><span data-if="com" style="display:none">"tool"</span><span data-if="dotnet" style="display:none">"tool"</span><span data-if="python" style="display:none">"tool"</span></i>:</b></dt>
<dd>


<p><a href="#ItemIdx"><i><code><span data-if="hdevelop" style="display:inline">ItemIdx</span><span data-if="c" style="display:none">ItemIdx</span><span data-if="cpp" style="display:none">ItemIdx</span><span data-if="com" style="display:none">ItemIdx</span><span data-if="dotnet" style="display:none">itemIdx</span><span data-if="python" style="display:none">item_idx</span></code></i></a> must be set to a valid calibration object pose index.
</p>
<p>By selecting the following parameter in <a href="#DataName"><i><code><span data-if="hdevelop" style="display:inline">DataName</span><span data-if="c" style="display:none">DataName</span><span data-if="cpp" style="display:none">DataName</span><span data-if="com" style="display:none">DataName</span><span data-if="dotnet" style="display:none">dataName</span><span data-if="python" style="display:none">data_name</span></code></i></a>, you can
set the pose of the robot tool:
</p>
<dl class="generic">

<dt><b><i><span data-if="hdevelop" style="display:inline">'tool_in_base_pose'</span><span data-if="c" style="display:none">"tool_in_base_pose"</span><span data-if="cpp" style="display:none">"tool_in_base_pose"</span><span data-if="com" style="display:none">"tool_in_base_pose"</span><span data-if="dotnet" style="display:none">"tool_in_base_pose"</span><span data-if="python" style="display:none">"tool_in_base_pose"</span></i>:</b></dt>
<dd><p>

Set the pose of the robot tool (in robot base coordinates),
which was used to obtain the observation of the pose of the
calibration object with the same index <a href="#ItemIdx"><i><code><span data-if="hdevelop" style="display:inline">ItemIdx</span><span data-if="c" style="display:none">ItemIdx</span><span data-if="cpp" style="display:none">ItemIdx</span><span data-if="com" style="display:none">ItemIdx</span><span data-if="dotnet" style="display:none">itemIdx</span><span data-if="python" style="display:none">item_idx</span></code></i></a>
(corresponds to the parameter <code>CalibObjPoseIdx</code> of any of
该算子s <a href="find_calib_object.html"><code><span data-if="hdevelop" style="display:inline">find_calib_object</span><span data-if="c" style="display:none">find_calib_object</span><span data-if="cpp" style="display:none">FindCalibObject</span><span data-if="com" style="display:none">FindCalibObject</span><span data-if="dotnet" style="display:none">FindCalibObject</span><span data-if="python" style="display:none">find_calib_object</span></code></a>,
<a href="set_calib_data_observ_pose.html"><code><span data-if="hdevelop" style="display:inline">set_calib_data_observ_pose</span><span data-if="c" style="display:none">set_calib_data_observ_pose</span><span data-if="cpp" style="display:none">SetCalibDataObservPose</span><span data-if="com" style="display:none">SetCalibDataObservPose</span><span data-if="dotnet" style="display:none">SetCalibDataObservPose</span><span data-if="python" style="display:none">set_calib_data_observ_pose</span></code></a>, or
<a href="set_calib_data_observ_points.html"><code><span data-if="hdevelop" style="display:inline">set_calib_data_observ_points</span><span data-if="c" style="display:none">set_calib_data_observ_points</span><span data-if="cpp" style="display:none">SetCalibDataObservPoints</span><span data-if="com" style="display:none">SetCalibDataObservPoints</span><span data-if="dotnet" style="display:none">SetCalibDataObservPoints</span><span data-if="python" style="display:none">set_calib_data_observ_points</span></code></a>).
</p></dd>
</dl>

</dd>
</dl>
<h2 id="sec_execution">运行信息</h2>
<ul>
  <li>多线程类型:可重入(与非独占操作符并行运行)。</li>
<li>多线程作用域:全局(可以从任何线程调用)。</li>
  <li>未经并行化处理。</li>
</ul>
<p>This operator modifies the state of the following input parameter:</p>
<ul><li><a href="#CalibDataID"><span data-if="hdevelop" style="display:inline">CalibDataID</span><span data-if="c" style="display:none">CalibDataID</span><span data-if="cpp" style="display:none">CalibDataID</span><span data-if="com" style="display:none">CalibDataID</span><span data-if="dotnet" style="display:none">calibDataID</span><span data-if="python" style="display:none">calib_data_id</span></a></li></ul>
<p>During execution of this operator, access to the value of this parameter must be synchronized if it is used across multiple threads.</p>
<h2 id="sec_parameters">参数表</h2>
  <div class="par">
<div class="parhead">
<span id="CalibDataID" class="parname"><b><code><span data-if="hdevelop" style="display:inline">CalibDataID</span><span data-if="c" style="display:none">CalibDataID</span><span data-if="cpp" style="display:none">CalibDataID</span><span data-if="com" style="display:none">CalibDataID</span><span data-if="dotnet" style="display:none">calibDataID</span><span data-if="python" style="display:none">calib_data_id</span></code></b> (input_control, state is modified)  </span><span>calib_data <code>→</code> <span data-if="dotnet" style="display:none"><a href="HCalibData.html">HCalibData</a>, </span><span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">HHandle</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (handle)</span><span data-if="dotnet" style="display:none"> (<i>IntPtr</i>)</span><span data-if="cpp" style="display:none"> (<i>HHandle</i>)</span><span data-if="c" style="display:none"> (<i>handle</i>)</span></span>
</div>
<p class="pardesc">Handle of a calibration data model.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="ItemType" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ItemType</span><span data-if="c" style="display:none">ItemType</span><span data-if="cpp" style="display:none">ItemType</span><span data-if="com" style="display:none">ItemType</span><span data-if="dotnet" style="display:none">itemType</span><span data-if="python" style="display:none">item_type</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Type of calibration data item.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'model'</span>
    <span data-if="c" style="display:none">"model"</span>
    <span data-if="cpp" style="display:none">"model"</span>
    <span data-if="com" style="display:none">"model"</span>
    <span data-if="dotnet" style="display:none">"model"</span>
    <span data-if="python" style="display:none">"model"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'calib_obj_pose'</span><span data-if="c" style="display:none">"calib_obj_pose"</span><span data-if="cpp" style="display:none">"calib_obj_pose"</span><span data-if="com" style="display:none">"calib_obj_pose"</span><span data-if="dotnet" style="display:none">"calib_obj_pose"</span><span data-if="python" style="display:none">"calib_obj_pose"</span>, <span data-if="hdevelop" style="display:inline">'camera'</span><span data-if="c" style="display:none">"camera"</span><span data-if="cpp" style="display:none">"camera"</span><span data-if="com" style="display:none">"camera"</span><span data-if="dotnet" style="display:none">"camera"</span><span data-if="python" style="display:none">"camera"</span>, <span data-if="hdevelop" style="display:inline">'model'</span><span data-if="c" style="display:none">"model"</span><span data-if="cpp" style="display:none">"model"</span><span data-if="com" style="display:none">"model"</span><span data-if="dotnet" style="display:none">"model"</span><span data-if="python" style="display:none">"model"</span>, <span data-if="hdevelop" style="display:inline">'tool'</span><span data-if="c" style="display:none">"tool"</span><span data-if="cpp" style="display:none">"tool"</span><span data-if="com" style="display:none">"tool"</span><span data-if="dotnet" style="display:none">"tool"</span><span data-if="python" style="display:none">"tool"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="ItemIdx" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ItemIdx</span><span data-if="c" style="display:none">ItemIdx</span><span data-if="cpp" style="display:none">ItemIdx</span><span data-if="com" style="display:none">ItemIdx</span><span data-if="dotnet" style="display:none">itemIdx</span><span data-if="python" style="display:none">item_idx</span></code></b> (input_control)  </span><span>number(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">MaybeSequence[Union[int, str]]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer / </span><span data-if="hdevelop" style="display:inline">string)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long / </span><span data-if="dotnet" style="display:none">string)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i> / </span><span data-if="cpp" style="display:none">HString)</span><span data-if="c" style="display:none"> (<i>Hlong</i> / </span><span data-if="c" style="display:none">char*)</span></span>
</div>
<p class="pardesc">Index of the affected item
(depending on the selected <a href="#ItemType"><i><code><span data-if="hdevelop" style="display:inline">ItemType</span><span data-if="c" style="display:none">ItemType</span><span data-if="cpp" style="display:none">ItemType</span><span data-if="com" style="display:none">ItemType</span><span data-if="dotnet" style="display:none">itemType</span><span data-if="python" style="display:none">item_type</span></code></i></a>).</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'general'</span>
    <span data-if="c" style="display:none">"general"</span>
    <span data-if="cpp" style="display:none">"general"</span>
    <span data-if="com" style="display:none">"general"</span>
    <span data-if="dotnet" style="display:none">"general"</span>
    <span data-if="python" style="display:none">"general"</span>
</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>0, 1, 2, <span data-if="hdevelop" style="display:inline">'general'</span><span data-if="c" style="display:none">"general"</span><span data-if="cpp" style="display:none">"general"</span><span data-if="com" style="display:none">"general"</span><span data-if="dotnet" style="display:none">"general"</span><span data-if="python" style="display:none">"general"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="DataName" class="parname"><b><code><span data-if="hdevelop" style="display:inline">DataName</span><span data-if="c" style="display:none">DataName</span><span data-if="cpp" style="display:none">DataName</span><span data-if="com" style="display:none">DataName</span><span data-if="dotnet" style="display:none">dataName</span><span data-if="python" style="display:none">data_name</span></code></b> (input_control)  </span><span>attribute.name <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Parameter(s) to set.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'reference_camera'</span>
    <span data-if="c" style="display:none">"reference_camera"</span>
    <span data-if="cpp" style="display:none">"reference_camera"</span>
    <span data-if="com" style="display:none">"reference_camera"</span>
    <span data-if="dotnet" style="display:none">"reference_camera"</span>
    <span data-if="python" style="display:none">"reference_camera"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'calib_settings'</span><span data-if="c" style="display:none">"calib_settings"</span><span data-if="cpp" style="display:none">"calib_settings"</span><span data-if="com" style="display:none">"calib_settings"</span><span data-if="dotnet" style="display:none">"calib_settings"</span><span data-if="python" style="display:none">"calib_settings"</span>, <span data-if="hdevelop" style="display:inline">'common_motion_vector'</span><span data-if="c" style="display:none">"common_motion_vector"</span><span data-if="cpp" style="display:none">"common_motion_vector"</span><span data-if="com" style="display:none">"common_motion_vector"</span><span data-if="dotnet" style="display:none">"common_motion_vector"</span><span data-if="python" style="display:none">"common_motion_vector"</span>, <span data-if="hdevelop" style="display:inline">'excluded_settings'</span><span data-if="c" style="display:none">"excluded_settings"</span><span data-if="cpp" style="display:none">"excluded_settings"</span><span data-if="com" style="display:none">"excluded_settings"</span><span data-if="dotnet" style="display:none">"excluded_settings"</span><span data-if="python" style="display:none">"excluded_settings"</span>, <span data-if="hdevelop" style="display:inline">'optimization_method'</span><span data-if="c" style="display:none">"optimization_method"</span><span data-if="cpp" style="display:none">"optimization_method"</span><span data-if="com" style="display:none">"optimization_method"</span><span data-if="dotnet" style="display:none">"optimization_method"</span><span data-if="python" style="display:none">"optimization_method"</span>, <span data-if="hdevelop" style="display:inline">'reference_camera'</span><span data-if="c" style="display:none">"reference_camera"</span><span data-if="cpp" style="display:none">"reference_camera"</span><span data-if="com" style="display:none">"reference_camera"</span><span data-if="dotnet" style="display:none">"reference_camera"</span><span data-if="python" style="display:none">"reference_camera"</span>, <span data-if="hdevelop" style="display:inline">'tool_in_base_pose'</span><span data-if="c" style="display:none">"tool_in_base_pose"</span><span data-if="cpp" style="display:none">"tool_in_base_pose"</span><span data-if="com" style="display:none">"tool_in_base_pose"</span><span data-if="dotnet" style="display:none">"tool_in_base_pose"</span><span data-if="python" style="display:none">"tool_in_base_pose"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="DataValue" class="parname"><b><code><span data-if="hdevelop" style="display:inline">DataValue</span><span data-if="c" style="display:none">DataValue</span><span data-if="cpp" style="display:none">DataValue</span><span data-if="com" style="display:none">DataValue</span><span data-if="dotnet" style="display:none">dataValue</span><span data-if="python" style="display:none">data_value</span></code></b> (input_control)  </span><span>attribute.value(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">MaybeSequence[Union[str, int]]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string / </span><span data-if="hdevelop" style="display:inline">integer)</span><span data-if="dotnet" style="display:none"> (<i>string</i> / </span><span data-if="dotnet" style="display:none">int / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>HString</i> / </span><span data-if="cpp" style="display:none">Hlong)</span><span data-if="c" style="display:none"> (<i>char*</i> / </span><span data-if="c" style="display:none">Hlong)</span></span>
</div>
<p class="pardesc">New value(s).</p>
<p class="pardesc"><span class="parcat">Default:
      </span>0</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>0, 1, 2, <span data-if="hdevelop" style="display:inline">'all'</span><span data-if="c" style="display:none">"all"</span><span data-if="cpp" style="display:none">"all"</span><span data-if="com" style="display:none">"all"</span><span data-if="dotnet" style="display:none">"all"</span><span data-if="python" style="display:none">"all"</span>, <span data-if="hdevelop" style="display:inline">'pose'</span><span data-if="c" style="display:none">"pose"</span><span data-if="cpp" style="display:none">"pose"</span><span data-if="com" style="display:none">"pose"</span><span data-if="dotnet" style="display:none">"pose"</span><span data-if="python" style="display:none">"pose"</span>, <span data-if="hdevelop" style="display:inline">'params'</span><span data-if="c" style="display:none">"params"</span><span data-if="cpp" style="display:none">"params"</span><span data-if="com" style="display:none">"params"</span><span data-if="dotnet" style="display:none">"params"</span><span data-if="python" style="display:none">"params"</span>, <span data-if="hdevelop" style="display:inline">'alpha'</span><span data-if="c" style="display:none">"alpha"</span><span data-if="cpp" style="display:none">"alpha"</span><span data-if="com" style="display:none">"alpha"</span><span data-if="dotnet" style="display:none">"alpha"</span><span data-if="python" style="display:none">"alpha"</span>, <span data-if="hdevelop" style="display:inline">'beta'</span><span data-if="c" style="display:none">"beta"</span><span data-if="cpp" style="display:none">"beta"</span><span data-if="com" style="display:none">"beta"</span><span data-if="dotnet" style="display:none">"beta"</span><span data-if="python" style="display:none">"beta"</span>, <span data-if="hdevelop" style="display:inline">'gamma'</span><span data-if="c" style="display:none">"gamma"</span><span data-if="cpp" style="display:none">"gamma"</span><span data-if="com" style="display:none">"gamma"</span><span data-if="dotnet" style="display:none">"gamma"</span><span data-if="python" style="display:none">"gamma"</span>, <span data-if="hdevelop" style="display:inline">'transx'</span><span data-if="c" style="display:none">"transx"</span><span data-if="cpp" style="display:none">"transx"</span><span data-if="com" style="display:none">"transx"</span><span data-if="dotnet" style="display:none">"transx"</span><span data-if="python" style="display:none">"transx"</span>, <span data-if="hdevelop" style="display:inline">'transy'</span><span data-if="c" style="display:none">"transy"</span><span data-if="cpp" style="display:none">"transy"</span><span data-if="com" style="display:none">"transy"</span><span data-if="dotnet" style="display:none">"transy"</span><span data-if="python" style="display:none">"transy"</span>, <span data-if="hdevelop" style="display:inline">'transz'</span><span data-if="c" style="display:none">"transz"</span><span data-if="cpp" style="display:none">"transz"</span><span data-if="com" style="display:none">"transz"</span><span data-if="dotnet" style="display:none">"transz"</span><span data-if="python" style="display:none">"transz"</span>, <span data-if="hdevelop" style="display:inline">'focus'</span><span data-if="c" style="display:none">"focus"</span><span data-if="cpp" style="display:none">"focus"</span><span data-if="com" style="display:none">"focus"</span><span data-if="dotnet" style="display:none">"focus"</span><span data-if="python" style="display:none">"focus"</span>, <span data-if="hdevelop" style="display:inline">'magnification'</span><span data-if="c" style="display:none">"magnification"</span><span data-if="cpp" style="display:none">"magnification"</span><span data-if="com" style="display:none">"magnification"</span><span data-if="dotnet" style="display:none">"magnification"</span><span data-if="python" style="display:none">"magnification"</span>, <span data-if="hdevelop" style="display:inline">'kappa'</span><span data-if="c" style="display:none">"kappa"</span><span data-if="cpp" style="display:none">"kappa"</span><span data-if="com" style="display:none">"kappa"</span><span data-if="dotnet" style="display:none">"kappa"</span><span data-if="python" style="display:none">"kappa"</span>, <span data-if="hdevelop" style="display:inline">'poly'</span><span data-if="c" style="display:none">"poly"</span><span data-if="cpp" style="display:none">"poly"</span><span data-if="com" style="display:none">"poly"</span><span data-if="dotnet" style="display:none">"poly"</span><span data-if="python" style="display:none">"poly"</span>, <span data-if="hdevelop" style="display:inline">'poly_tan_2'</span><span data-if="c" style="display:none">"poly_tan_2"</span><span data-if="cpp" style="display:none">"poly_tan_2"</span><span data-if="com" style="display:none">"poly_tan_2"</span><span data-if="dotnet" style="display:none">"poly_tan_2"</span><span data-if="python" style="display:none">"poly_tan_2"</span>, <span data-if="hdevelop" style="display:inline">'k1'</span><span data-if="c" style="display:none">"k1"</span><span data-if="cpp" style="display:none">"k1"</span><span data-if="com" style="display:none">"k1"</span><span data-if="dotnet" style="display:none">"k1"</span><span data-if="python" style="display:none">"k1"</span>, <span data-if="hdevelop" style="display:inline">'k2'</span><span data-if="c" style="display:none">"k2"</span><span data-if="cpp" style="display:none">"k2"</span><span data-if="com" style="display:none">"k2"</span><span data-if="dotnet" style="display:none">"k2"</span><span data-if="python" style="display:none">"k2"</span>, <span data-if="hdevelop" style="display:inline">'k3'</span><span data-if="c" style="display:none">"k3"</span><span data-if="cpp" style="display:none">"k3"</span><span data-if="com" style="display:none">"k3"</span><span data-if="dotnet" style="display:none">"k3"</span><span data-if="python" style="display:none">"k3"</span>, <span data-if="hdevelop" style="display:inline">'image_plane_dist'</span><span data-if="c" style="display:none">"image_plane_dist"</span><span data-if="cpp" style="display:none">"image_plane_dist"</span><span data-if="com" style="display:none">"image_plane_dist"</span><span data-if="dotnet" style="display:none">"image_plane_dist"</span><span data-if="python" style="display:none">"image_plane_dist"</span>, <span data-if="hdevelop" style="display:inline">'tilt'</span><span data-if="c" style="display:none">"tilt"</span><span data-if="cpp" style="display:none">"tilt"</span><span data-if="com" style="display:none">"tilt"</span><span data-if="dotnet" style="display:none">"tilt"</span><span data-if="python" style="display:none">"tilt"</span>, <span data-if="hdevelop" style="display:inline">'principal_point'</span><span data-if="c" style="display:none">"principal_point"</span><span data-if="cpp" style="display:none">"principal_point"</span><span data-if="com" style="display:none">"principal_point"</span><span data-if="dotnet" style="display:none">"principal_point"</span><span data-if="python" style="display:none">"principal_point"</span>, <span data-if="hdevelop" style="display:inline">'cx'</span><span data-if="c" style="display:none">"cx"</span><span data-if="cpp" style="display:none">"cx"</span><span data-if="com" style="display:none">"cx"</span><span data-if="dotnet" style="display:none">"cx"</span><span data-if="python" style="display:none">"cx"</span>, <span data-if="hdevelop" style="display:inline">'cy'</span><span data-if="c" style="display:none">"cy"</span><span data-if="cpp" style="display:none">"cy"</span><span data-if="com" style="display:none">"cy"</span><span data-if="dotnet" style="display:none">"cy"</span><span data-if="python" style="display:none">"cy"</span>, <span data-if="hdevelop" style="display:inline">'sx'</span><span data-if="c" style="display:none">"sx"</span><span data-if="cpp" style="display:none">"sx"</span><span data-if="com" style="display:none">"sx"</span><span data-if="dotnet" style="display:none">"sx"</span><span data-if="python" style="display:none">"sx"</span>, <span data-if="hdevelop" style="display:inline">'sy'</span><span data-if="c" style="display:none">"sy"</span><span data-if="cpp" style="display:none">"sy"</span><span data-if="com" style="display:none">"sy"</span><span data-if="dotnet" style="display:none">"sy"</span><span data-if="python" style="display:none">"sy"</span>, <span data-if="hdevelop" style="display:inline">'vx'</span><span data-if="c" style="display:none">"vx"</span><span data-if="cpp" style="display:none">"vx"</span><span data-if="com" style="display:none">"vx"</span><span data-if="dotnet" style="display:none">"vx"</span><span data-if="python" style="display:none">"vx"</span>, <span data-if="hdevelop" style="display:inline">'vy'</span><span data-if="c" style="display:none">"vy"</span><span data-if="cpp" style="display:none">"vy"</span><span data-if="com" style="display:none">"vy"</span><span data-if="dotnet" style="display:none">"vy"</span><span data-if="python" style="display:none">"vy"</span>, <span data-if="hdevelop" style="display:inline">'vz'</span><span data-if="c" style="display:none">"vz"</span><span data-if="cpp" style="display:none">"vz"</span><span data-if="com" style="display:none">"vz"</span><span data-if="dotnet" style="display:none">"vz"</span><span data-if="python" style="display:none">"vz"</span>, <span data-if="hdevelop" style="display:inline">'true'</span><span data-if="c" style="display:none">"true"</span><span data-if="cpp" style="display:none">"true"</span><span data-if="com" style="display:none">"true"</span><span data-if="dotnet" style="display:none">"true"</span><span data-if="python" style="display:none">"true"</span>, <span data-if="hdevelop" style="display:inline">'false'</span><span data-if="c" style="display:none">"false"</span><span data-if="cpp" style="display:none">"false"</span><span data-if="com" style="display:none">"false"</span><span data-if="dotnet" style="display:none">"false"</span><span data-if="python" style="display:none">"false"</span>, <span data-if="hdevelop" style="display:inline">'linear'</span><span data-if="c" style="display:none">"linear"</span><span data-if="cpp" style="display:none">"linear"</span><span data-if="com" style="display:none">"linear"</span><span data-if="dotnet" style="display:none">"linear"</span><span data-if="python" style="display:none">"linear"</span>, <span data-if="hdevelop" style="display:inline">'nonlinear'</span><span data-if="c" style="display:none">"nonlinear"</span><span data-if="cpp" style="display:none">"nonlinear"</span><span data-if="com" style="display:none">"nonlinear"</span><span data-if="dotnet" style="display:none">"nonlinear"</span><span data-if="python" style="display:none">"nonlinear"</span>, <span data-if="hdevelop" style="display:inline">'stochastic'</span><span data-if="c" style="display:none">"stochastic"</span><span data-if="cpp" style="display:none">"stochastic"</span><span data-if="com" style="display:none">"stochastic"</span><span data-if="dotnet" style="display:none">"stochastic"</span><span data-if="python" style="display:none">"stochastic"</span></p>
</div>
<h2 id="sec_example_all">例程 (HDevelop)</h2>
<pre class="example">
* Here, the cell size is known exactly, thus it is excluded from
* the optimization.
set_calib_data (CalibDataID, 'camera', 'general', 'excluded_settings', \
                ['sx','sy'])
</pre>
<h2 id="sec_predecessors">可能的前置算子</h2>
<p>
<code><a href="set_calib_data_observ_points.html"><span data-if="hdevelop" style="display:inline">set_calib_data_observ_points</span><span data-if="c" style="display:none">set_calib_data_observ_points</span><span data-if="cpp" style="display:none">SetCalibDataObservPoints</span><span data-if="com" style="display:none">SetCalibDataObservPoints</span><span data-if="dotnet" style="display:none">SetCalibDataObservPoints</span><span data-if="python" style="display:none">set_calib_data_observ_points</span></a></code>, 
<code><a href="find_calib_object.html"><span data-if="hdevelop" style="display:inline">find_calib_object</span><span data-if="c" style="display:none">find_calib_object</span><span data-if="cpp" style="display:none">FindCalibObject</span><span data-if="com" style="display:none">FindCalibObject</span><span data-if="dotnet" style="display:none">FindCalibObject</span><span data-if="python" style="display:none">find_calib_object</span></a></code>
</p>
<h2 id="sec_successors">可能的后置算子</h2>
<p>
<code><a href="calibrate_cameras.html"><span data-if="hdevelop" style="display:inline">calibrate_cameras</span><span data-if="c" style="display:none">calibrate_cameras</span><span data-if="cpp" style="display:none">CalibrateCameras</span><span data-if="com" style="display:none">CalibrateCameras</span><span data-if="dotnet" style="display:none">CalibrateCameras</span><span data-if="python" style="display:none">calibrate_cameras</span></a></code>, 
<code><a href="calibrate_hand_eye.html"><span data-if="hdevelop" style="display:inline">calibrate_hand_eye</span><span data-if="c" style="display:none">calibrate_hand_eye</span><span data-if="cpp" style="display:none">CalibrateHandEye</span><span data-if="com" style="display:none">CalibrateHandEye</span><span data-if="dotnet" style="display:none">CalibrateHandEye</span><span data-if="python" style="display:none">calibrate_hand_eye</span></a></code>
</p>
<h2 id="sec_module">模块</h2>
<p>
Calibration</p>
<!--OP_REF_FOOTER_START-->
<hr>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<div class="footer">
<div class="copyright">HALCON算子参考手册 Copyright © 2015-2023 51Halcon</div>
</div>
</div>
</body>
</html>
